//package algorithm.Main;
//
//import java.util.*;
//
//public class Main {
//    static class Node {
//        public int run = 0;
////        public HashSet<Node> next = new HashSet<>();
//        public Node next;
//        public Node child;
//
//        public Node() {
//
//        }
//    }
//
//    public static void outPut() {
//        Scanner scanner = new Scanner(System.in);
//        int n = scanner.nextInt();
//        int q = scanner.nextInt();
//        HashMap<Integer, Node> nodeMap = new HashMap<>();
//        for (int i = 1; i <= n; i++) {
//            Node service = new Node();
//            nodeMap.put(i, service);
//        }
//
//        for (int i = 1; i <= n; i++) {  //第i号服务
//            int nextInt = scanner.nextInt();
//
//            int after = scanner.nextInt();  // 依赖
//            Node cur = nodeMap.get(i);
//            cur.child = nodeMap.get(after);
//            cur = cur.child;
//            for (int j = 0; j < nextInt-1; j++) {
//                after = scanner.nextInt();  // 依赖
////                nodeMap.get(i).next.add(nodeMap.get(after));
//                cur.next = nodeMap.get(after);
//                cur = cur.next;
//            }
//        }
//
//        for (int i = 0; i < q; i++) {
//            int o = scanner.nextInt();
//            int service = scanner.nextInt();
//            Node cur = nodeMap.get(service);
//            System.out.println(op(o, service, cur));
//        }
//
//    }
//
//    public static int count = 0;
//
//
//    public static int op(int op, int service, Node cur) {
//        if (1==op) {
//            if (cur.run != op) {
//                cur.run = op;
//                count++;
//            }
//            if (cur.child != null) {
//                cur = cur.child;
//                if (cur.run != op) {
//                    cur.run = op;
//                    count++;
//                }
//            }
//            while (cur.next != null) {
//                cur = cur.next;
//                op(op, service, cur);
//            }
//
//
//        } else {
//            if (cur.run != op) {
//                cur.run = op;
//                count--;
//            }
//            if (cur.child != null) {
//                cur = cur.child;
//                if (cur.run != op) {
//                    cur.run = op;
//                    count--;
//                }
//            }
//            while (cur.next != null) {
//                cur = cur.next;
//                op(op, service, cur);
//            }
//        }
//        return count;
//    }
//
//    public static void main(String[] args) {
//        outPut();
//    }
//}
